package com.pureut.equipment.domain.vo;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.pureut.common.core.web.domain.BaseEntity;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * @author: CM
 * @date: 2023/2/13  10:40
 */
@Data
public class DeviceRecordVo extends BaseEntity {

    /**
     * id
     */
    private long id;

    /**
     * 设备名称
     */
    @NotBlank(message = "设备名称不能为空")
    private String deviceName;


    /**
     * 设备类型
     */
    @NotBlank(message = "设备类型不能为空")
    private String deviceType;

    /**
     * 设备编码
     */
    private String deviceCode;


    /**
     * 设备型号
     */
    @NotBlank(message = "设备型号不能为空")
    private String deviceUnitType;

    /**
     * 出厂编码
     */
    private String factoryCode;

    /**
     * 总功率
     */
    private String totalPower;

    /**
     * 制造厂商
     */
    private String factoryName;

    /**
     * 出厂年月
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date factoryDate;

    /**
     * 安装时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date installationTime;

    /**
     * 投产时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date streamTime;

    /**
     * 安装地点
     */
    @NotBlank(message = "安装地点不能为空")
    private String installationLocation;

    /**
     * 部门id
     */
    private Long deptId;

    /**
     * 使用部门
     */
    @NotNull(message = "使用部门不能为空")
    private Long deviceDept;

    /**
     * 设备状态
     */
    @NotBlank(message = "设备状态不能为空")
    private String deviceStatus;

    /**
     * 展示顺序
     */
    private Integer deviceSort;

    /**
     * 备注
     */
    private String remark;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 创建人
     */
    private String createMan;

    /**
     * 图片文件路径
     */
    private String fileImagePath;

    /**
     * 附件文件路径
     */
    private String fileAttachmentPath;

    /**
     * 工艺参数
     */
    private List<DeviceParameterVo> list;

    private String code;


}
